// 思路：
// 1.先把axios做一个封装，设置：请求接口路径，请求拦截，响应拦截    把封装后的instance导出
// 2. 然后创建一个api.js文件, 导入instance封装后的文件命名为request，把每一个请求的具体路径封装一个函数
// 3. 在组件内部导入对应的函数名，发送请求直接调用函数即可。




import axios from "axios";

// 创建一个axios实例对象
const instance = axios.create({
    baseURL: "http://kumanxuan1.f3322.net:8001",
    timeout: 5000
})


// 请求拦截器
instance.interceptors.request.use(config => {
    // 什么时候执行这个函数？ 在请求发出去之前执行
    // config 是什么？ 一个对象，关于本次请求信息对象
    //  这个函数可以用来做什么？ 添加请求头
    return config
}, err => {
    return Promise.reject(err)
})



// 响应拦截器
instance.interceptors.response.use(res => {
    // 什么时候执行这个函数？ 在接收到响应之后，数据进入组件之前执行
    // res是一个axios封装好的一个响应对象，里面包含有后端给我们的数据
    // 这个函数可以用来做什么？ 可以对响应回来的数据进行
    return res.data
}, err => {
    return Promise.reject(err)

})

export default instance